home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / domino6_overflows.nasl < prev    next >
Text File  |  2005-01-14  |  3KB  |  120 lines

  1. #
  2. # This script was written by Renaud Deraison <deraison@cvs.nessus.org>
  3. #
  4. #
  5. # See the Nessus Scripts License for details
  6. #
  7. # This flaw is a pain to check for. We rely on the banner, and if that fails,
  8. # we'll have to rely on the behavior of the remote server when it comes
  9. # to 30x redirections.
  10.  
  11. if(description)
  12. {
  13.  script_id(11386);
  14.  script_bugtraq_id(6870, 6871);
  15.  script_version ("$Revision: 1.9 $");
  16.  
  17.  name["english"] = "Lotus Domino 6.0 vulnerabilities";
  18.  script_name(english:name["english"], francais:name["francais"]);
  19.  
  20.  desc["english"] = "
  21. The remote Lotus Domino server, according to its version number,
  22. is vulnerable to various buffer overflows and denial
  23. of service attack.
  24.  
  25. An attacker may use these to disable this server or
  26. execute arbitrary commands on the remote host.
  27.     
  28.  
  29. Reference : http://www.nextgenss.com/advisories/lotus-hostlocbo.txt
  30.  
  31.  
  32. Solution : Update to Domino 6.0.1
  33. Risk factor : High";    
  34.  
  35.  script_description(english:desc["english"]);
  36.  
  37.  summary["english"] = "Checks for the version of the remote Domino Server";
  38.  
  39.  script_summary(english:summary["english"]);
  40.  
  41.  script_category(ACT_MIXED_ATTACK);
  42.  
  43.  
  44.  script_copyright(english:"This script is Copyright (C) 2003 Renaud Deraison",
  45.         francais:"Ce script est Copyright (C) 2003 Renaud Deraison");
  46.  family["english"] = "Remote file access";
  47.  family["francais"] = "AccΦs aux fichiers distants";
  48.  script_family(english:family["english"], francais:family["francais"]);
  49.  script_dependencie("find_service.nes", "http_version.nasl", "webmirror.nasl", "www_fingerprinting_hmap.nasl");
  50.  script_require_ports("Services/www", 80);
  51.  script_require_keys("www/domino");
  52.  exit(0);
  53. }
  54.  
  55. #
  56. # The script code starts here
  57. #
  58.  
  59. include("http_func.inc");
  60. include("http_keepalive.inc");
  61.  
  62.  
  63. port = get_http_port(default:80);
  64.  
  65. sig = get_kb_item("www/hmap/" + port + "/description");
  66. if ( sig && "Lotus Domino" >!< sig ) exit(0);
  67.  
  68. banner = get_http_banner(port:port);
  69.  
  70. if(egrep(pattern:"Lotus-Domino/(Release-)?[1-5]\..*", string:banner))
  71.  {
  72.   exit(0);
  73.  }
  74.  
  75.  
  76. if(egrep(pattern:"Lotus-Domino/6\.(0|0\.0)[^0-9]$", string:banner))
  77. {
  78.  security_hole(port);
  79.  exit(0);
  80. }
  81.  
  82. if(safe_checks()) exit(0);
  83.  
  84. #
  85. # Next, we try a generic check, in case of the redirection
  86. # is set for the start web page (happens often)
  87.  
  88.  
  89. #
  90. # Finally, we try the check for every 30x page that webmirror.nasl
  91. # encountered
  92. #
  93.  
  94. redirs = get_kb_list(string("www/", port, "/content/30x"));
  95. if(isnull(redirs))redirs = make_list("/");
  96. else redirs = make_list(redirs, "/");
  97.  
  98. foreach url (redirs)
  99. {
  100.  req = string("GET ", url, " HTTP/1.1\r\n","Host: foobar\r\n\r\n");
  101.  res = http_keepalive_send_recv(port:port, data:req);
  102.  
  103.  if(egrep(pattern:"https?://foobar/.*", string:res)){
  104.      req = string("GET ", url, " HTTP/1.1\r\n", "Host: ", crap(400), "\r\n\r\n");
  105.     res = http_keepalive_send_recv(port:port, data:req);
  106.     if(!res)security_hole(port);
  107.     else {
  108.      if("Domino" >< res)
  109.      {
  110.       if(ereg(pattern:"^HTTP/1\.[01] 3", string:res))
  111.       {
  112.       security_hole(port);
  113.       exit(0);
  114.       }
  115.      }
  116.     }
  117.        }
  118. }
  119.